Automatic location-specific content selection for portable information retrieval devices

ABSTRACT

A method for anticipating a user&#39;s desired information using a FDA device connected to a computer network is provided. This method further comprises maintaining a database of user tendencies within the computer network, receiving sensor data from the user&#39;s physical environment via the FDA device, generating query strings using both tendency data and sensor data, retrieving data from external data sources using these generated query strings, organizing the retrieved data into electronic folders, and delivering this organized data to the user via the FDA device, In particular, a data management module anticipates the type of information a user desires by combining real time data taken from a sensor unit within a FDA and data regarding the history of that particular user&#39;s tendencies stored within the data management module.

CROSS-REFERENCE TO RELATED APPLICATION

This application claims priority pursuant to 35 U.S.C. §119(e) to U.S.Provisional Application No. 60/203,169, filed May 8, 2000, whichapplication is specifically incorporated herein, in its entirety, byreference.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to applications pertaining to informationretrieval devices (IRD's) connected to the Internet. More specifically,this invention relates to a method and apparatus for anticipating auser's desired information and delivering this information to the userthrough an IRD device, such as a personal digital assistant (PDA).

2. Description of Related Art

Computers are currently being used as electronic encyclopedias, withsearches becoming increasingly sophisticated and with larger amounts ofdata being available to the user. Computers suitable for performing suchtasks are referred to herein as information retrieval devices (IRD's). Ahighly portable and particularly useful embodiment of an IRD isrepresented by personal digital assistants (PDA's). However, IRD'sremain unable to perform even the most basic task of anticipating theneeds of the user and gathering information related to those needs,without the user having to enter such needs.

The market for IRD's has become increasingly popular over the past fewyears. For style-conscious users looking for the latest in electronicorganization, PDA's are an attractive option because of theirability_(.) to provide users with a plethora of computing functions in asmall, portable device. A PDA is defined here as a handheld device thatperforms various computing functions for the user. In this respect, aPDA is often referred to as a handheld personal computer, capable ofperforming such tasks as an address book, notepad, appointments diary,and phone list With the growth of PDA technology, however, thesecapabilities began to include more demanding applications such asspreadsheets, word processors, databases, financial management software,and games. Today, the emergence of wireless web technology has providedPDA manufacturers with the additional feature of accessing the Internetto market their respective products.

It should be appreciated that the Internet is defined here as acollection of interconnected (public and/or private) networks linkedtogether by a set of standard protocols (such as TCP/IP and HTTP) toform a global, distributed network. While this term is intended to referto what is now commonly known as the Internet, it is also intended toencompass variations which may be made in the future, including changesand additions to existing standard protocols.

Although the ability to retrieve information from the Internet using PDAdevices is generally known in the art, an automated procedure forretrieving anticipated information generated according to sensory datataken from the PDA does not exist. It would thus be advantageous toimplement a method and apparatus which anticipates a user's desiredinformation and delivers this information directly to the user through aPDA device.

SUMMARY OF THE INVENTION

In an embodiment of the invention, a method for anticipating a user'sdesired information using an information retrieval device (IRD)connected to a computer network is provided. This method furthercomprises maintaining a database of user tendencies within the computernetwork, receiving sensor data from the user's physical environment viathe IRD, generating query strings using both tendency data and sensordata, retrieving data from external data sources using these generatedquery strings, organizing the retrieved data into electronic folders,and delivering this organized data to the user via the IRD. Inparticular, a data management module anticipates the type of informationa user desires by combining real time data taken from a sensor unitwithin an IRD and data regarding the history of that particular user'stendencies stored within the data management module.

In one such embodiment, an IRD sensor unit may be comprised of a“Dictation” setting enabling the user to dictate a conversation in realtime. In this type of embodiment, a user may simply select a settingcorresponding to “Dictation”. In other embodiments, more sophisticated“Dictation” settings may also be implemented. Such embodiments mayinclude a textual analysis which launches certain applications wheneverparticular names are detected. For example, if the name “John Doe” isdetected, the IRD would relay any available information regarding “JohnDoe” to the user from the data management module. It should beappreciated that such information may include user-specific informationobtained directly from the data management module (e.g., an addressbook, calendar, etc.) or information obtained from external data sources(e.g., an online database, search engine, etc.). It should further beappreciated that the device may use both user tendencies and datarelating to the physical environment in order to choose between andprioritize multiple matching results, as for example picking the ten“John Doe” matches that live closest to the physical location of theuser and organizing them by that proximity, or by returning the “JohnDoe” matches that are lawyers based upon the user's tendency to requestfurther information on past matches who were lawyers.

Another such embodiment may include a hybrid recording and transcriptionsensor setting. In this embodiment, the IRD may generate a runningtranscript which includes the locations of the speakers relative to theRD in order to differentiate between different speakers in aconversation. In cases where the RD is unable to convert a sound into aword, the sound is simply recorded and included in the transcript as ahyperlink. An additional feature to this embodiment may include a realtime translator application which translates between languages.

In another embodiment, the RD sensor unit may include a GPS receiverthat enables the IRD to retrieve information within the context of datareceived by the GPS receiver. For example, if the GPS signal indicatesthat the user is in Japan, the data management module may give weight tosearch results related to Japan.

It should be appreciated that data ascertained from a GPS receiver mayalso be used to present information about a particular establishment orarea the user is in. In this type of embodiment, a real estate broker,for example, may approach a home for sale and receive a list ofinformation regarding that particular home. Such information may includethe address of the home, the sale price of the home, and informationregarding the neighborhood of the home organized in several electronicfolders.

In another embodiment, the IRD may be used to analyze ambient soundsdetected by its sensor unit. In this embodiment, the IRD may, forexample, identify the song and artist of music detected by the sensorunit through a spectral analysis of the sensor data. Similarly, the IRDmay also be used to detect sounds from a telephone touch dial anddetermine the numbers being dialed. An added feature to this embodimentmay include a reverse lookup of the phone number which would displayinformation regarding the person on the receiving end of the call.

A more complete understanding of a method and apparatus for deliveringcontent via informational retrieval devices will be afforded to thoseskilled in the art, as well as a realization of additional advantagesand objects thereof, by a consideration of the following detaileddescription of the preferred embodiment. Reference will be made to theappended sheets of drawings which will first be described briefly.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram demonstrating a preferred embodiment of theinvention;

FIG. 2 is a flow chart illustrating the steps for users to accessanticipated data according to an embodiment of the invention;

FIG. 3 is a schematic illustration of a sensor activation Web pageaccording to an embodiment of the invention;

FIG. 4 is a flow chart illustrating the steps for generating anticipateddata according to an embodiment of the invention;

FIG. 5 is a schematic illustration of a Web page with various electronicfolders containing links to anticipated data according to an embodimentof the invention;

FIG. 6 is a schematic illustration of a Web page with various links toanticipated data according to an embodiment of the invention; and

FIG. 7 is a schematic illustration of a Web page displaying anticipateddata according to an embodiment of the invention.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT

The present invention is directed towards a method and apparatus fordelivering content via informational retrieval devices. In particular, adata management module anticipates the type of information a userdesires by combining real time data taken from a sensor unit connectedto the IRD and data regarding the history of that particular user'stendencies stored within the data management module. In the detaileddescription that follows, it should be appreciated that like elementnumerals are used to describe like elements illustrated in one or morefigures.

Referring first to FIG. 1, a block diagram is illustrated of a wide areanetwork employing a method and apparatus according to an embodiment ofthe invention. It is anticipated that the present invention operateswith a plurality of computers which are coupled together on a wide areanetwork, such as the Internet 20, or other communications network. FIG.1 depicts such a network which includes an information retrieval device(IRD) 10, a data management module 30, and an external data source 40.The IRD 10 is further comprised of an applications processor 13 coupledto a controller 11, a display unit 12, a Web browser. 14, a contextmemory 15, and a data memory 16. The context memory 15 is shownconnected to both a sensor unit 17 and to the data memory 16. The sensorunit 17 is also shown to be connected to an analog-to-digital (AID)converter 18 which is directly connected to the data memory 16.

In a preferred embodiment, a user determines which sensors it wants toactivate using the controller 11 of the IRD 10. These selections arethen received by the applications processor 13 where they are relayed tothe context memory 15. The context memory 15 includes a set ofinstructions that activate particular sensors comprising the sensor unit17 of the IRD 10. The function of the context memory 15 is thusanalogous to an instruction cache for the sensor unit 17. Analog sensordata is then passed from the sensor unit to the AID converter where itis converted to digital data. This digital data is then compressed andtemporarily stored in the IRD 10 data memory unit 16 until it is readyto be sent to the data management module 30.

As illustrated, the IRD 10 communicates with the data management module30 and external data sources 40 via the Internet 20. The data managementmodule 30 is further comprised of a core processor 31 coupled to aclient information database 35, a search string database 39, a searchengine 37, and a Web server 33 connected to an HTML (Hyper-Text MarkupLanguage) documents database 34.

It should be appreciated that a search engine 37 typically incorporatesa database engine, such as a SQL Server™ engine from MicrosoftCorporation or Oracle™ database engine, as part of their architecture.Search engines typically perform searches by operating on a string ofcharacters, known as a “query string.” A query string is coded accordingto a set of rules determined by the database engine and/or a userinterface between the database engine and the user. As used herein, a“query” is broader than a “query string,” denoting both the query stringand the search logic represented by the query string, whereas “querystring” refers only to a string of characters, symbols, or codes used todefine a query.

It should be further appreciated that Web server 33 accesses a pluralityof Web pages, distributable applications, and other electronic filescontaining information of various types stored in the HTML documentsdatabase. As a result, Web pages may be viewed on various web-enabledcomputers in a given network, such as the information retrieval device10. For example, a particular Web page or other electronic file may beviewed through a suitable application program residing on theinformation retrieval device 10 such as a browser 14, or by adistributable application provided to the information retrieval device10, by the Web server 33. It should be appreciated that many differentinformation retrieval devices, many different Web servers, and manydifferent search servers of various types may be communicating with eachother at the same time.

As is generally known in the art, a user identifies a Web page it wishesto retrieve using the information retrieval device 10 by communicatingan HTTP (Hyper-Text Transport Protocol) request from the browserapplication 14. The HTTP request includes the Uniform Resource Locator(URL) of the desired Web page, which may correspond to an HTML documentstored in the HTML documents database . The HTTP request is then routedto the Web server 33 via the Internet 20. The Web server 33 thenretrieves the HTML document identified by the URL, and communicates theHTML document across the Internet 20 to the browser application 14. TheHTML document may be communicated in the form of plural message packetsas defined by standard protocols, such as the Transport ControlProtocol/Internet Protocol (TCP/IP).

In a preferred embodiment of the invention, the IRD 10 provides userswith information received from a data management module 30. Inparticular, a data management module 30 anticipates the type ofinformation a user desires through real time data taken from the sensorunit 17 of the IRD 10. It should, however, be appreciated that users mayhave the option of retrieving information by compiling a query whichcombines this sensor data with data regarding the history of thatparticular user's “tendencies” stored in the client information database35. “Tendencies” are defined here as a topical measure of a user'sinformation interests, Various methods may be used to determine a user'stendencies, such as, for example, providing a form or Web page for theuser to designate topical areas of interest, analyzing the user'sdemographic and purchasing information to ascertain likely areas ofinterest, and analyzing a record or history of the user's prior queries.It may be particularly useful to rank user tendencies in priority order.For example, if tendencies are to be determined from a record of priorqueries, the tendencies could be ranked according to factors such as,for example, the frequency with which the same or similar queries havebeen repeated, the number of related queries in a topical area, and thelength of time since the query was repeated. These and various othermethods as known in the art may be used to determine a user'stendencies, and the invention is not limited by the method that thedetermination is made.

In FIG. 2, a flow chart illustrating the steps for users to access suchanticipated data according to an embodiment of the invention is shown.The procedure begins with power being applied to the IRD 10 at step 100.The user is then asked which particular sensors it would like toactivate at step 106. An example of a sensor activation We pagedisplayed to the user according to an embodiment of the invention isshown in FIG. 3. As illustrated, the IRD 10 display unit 12 is comprisedof various fields. Such fields may comprise a plurality of sensor fieldsincluding a “Sensor One” field 200, a “Sensor Two” field 205, a “SensorThree” field 210, as well as all other sensor fields up to sensor fieldn 215 (where n represents the total number of sensors available to theuser). Other fields displayed to the user may include fields used toscroll through other sensors, not currently displayed, such as an“Additional Sensors” field 220 and a “Previous Sensors” field 225. Ifthe user wishes to activate specific sensors at step 105, then thesesensors are selected by the user at step 110 and activated by the IRD 10at step 120 by selecting the “Begin” field 235 illustrated in FIG. 3;otherwise, the user selects the “Default Settings” field 230 causing theIRD 10 to select sensors specified by its default settings at step 115,and thus activating those default sensors corresponding to thesesettings at step 120.

Once the appropriate sensors are activated at step 120, the IRD 10begins to scan its environment according to these sensor settings atstep 125. It should be appreciated that this scan procedure may includea plurality of sensors of various types. An exemplary embodiment of theinvention may, therefore, include sensors such as a microphone and GPS(Global Positioning System) receiver that respectively scan the IRD 10environment for sound and location. Within such embodiment, a user maychoose to activate both the microphone and the GPS receiver in order tosimultaneously ascertain data from both devices. Other embodiments ofsensors may include, but are not limited to, light sensors and motionsensors.

Returning to the flow chart illustrated in. FIG. 2, the IRD 10 thenreceives analog data from its active sensors at step 130 and convertsthis data into digital data using the A/D converter 18 at step 135. Thisdigital data is then compressed and temporarily stored in the IRD's datamemory unit 16 at step 140 until it is sent to the data managementmodule 30 at step 145 via the Internet 20. The procedure then continuesby having the IRD 10 receive compressed feedback data from the datamanagement module 30 at step 150. This data is then decompressed at step155 and displayed to the user at step 160.

In FIG. 4, a flow chart illustrating the steps for generating thefeedback data received by the IRD 10 according to an embodiment of theinvention is shown. This procedure begins with the data managementmodule 30 receiving a data signal from the IRD 10 at step 300. Thereceived data is then decompressed at step 305 in order to generateprimary search strings from data taken from the IRD 10 sensor unit 17 atstep 310. The primary search strings generated at step 310 may be viewedas simple query strings, found within the search string database 39using sensor unit 17 data, which may be used to ascertain informationfrom conventional search engines available through the Internet 20. Suchprimary search strings may, for example, include “restaurants in cityy”, which would correspond to data received from both a sound sensor,sensing that the word “restaurant” was said, and from a GPS receiversensor, sensing that the user is in “city y”.

Returning to the flow chart illustrated in FIG. 4, the procedurecontinues with the data management module 30 determining the identity ofthe client at step 315. At step 320, the data management module 30 thenopens the appropriate customer file from the client information database35 which optionally opens the client's profile of navigation tendencies.It should be appreciated that these navigation tendencies may berepeatedly calculated at a user-defined rate from within the coreprocessor 31 using an arbitrary statistical weighting system determinedeither by the user or the IRD 10 manufacturer.

In order to both narrow and customize these searches, an internal searchstring database 39 may be used simultaneously with the clientinformation database 35 to generate secondary search strings thatdirectly correspond to the tendencies of the user. In particular, thecore processor 31 searches for more specific search strings from withinthe search string database 39 which more accurately reflect theanticipated information desired by the user according to tendency datastored in the customer information database 35. These search strings arethen combined with the primary search strings found at step 310 in orderto generate secondary search strings at step 325.

The procedure continues at step 330 with an external data source 40search being made according to the secondary search strings found atstep 325. It should be appreciated that the type of external data source40 used at step 330 may be provided by various embodiments. Thisexternal data source 40 may, for example, be provided by a conventionalsearch engine, an external database service provider, or any other datasource available via the Internet 20. Depending on the type of data thedata management module 30 is attempting to extract from these datasources 40, an internal weighting algorithm is again implemented inorder to determine which returned search results best match theinformation desired by the user as anticipated by the data managementmodule 30. The data management module 30 then selects only those searchresults receiving a criterion score above some predetermined thresholdat step 335, and organizes these selected search results into variouselectronic folders at step 340. This data is then compressed by the datamanagement module 30 at step 345, and finally sent to the IRD 10 at step350.

An example of a Web page including such electronic folders displayed tothe user according to an embodiment of the invention is shown in FIG. 5.Similar to the sensor activation Web page described with respect to FIG.3, the PDA 10 display unit 12 is again comprised of various fields. Inthis case, however, the display unit 12 may be comprised of a pluralityof folder fields which include a “Folder One” field 400, a “Folder Two”field 405, a “Folder Three” field 410 as well as all other folder fieldsup to folder field n 415 (where n represents the total number of foldersdisplayed to the user). Other fields displayed to the user may includefields used to scroll through other folders, not currently displayed,such as an “Additional Folders” field 420 and a “Previous Folders” field425. If none of these folders include the user's desired search results,the user may enter its own search string in the field labeled “SearchField” 435. It should be appreciated that any search string entered bythe user via the “Search Field”, is used by the data management module30 at step 330 of the flow chart illustrated in FIG. 4 in order toextract data from an external data source 40 according to thisparticular search string. It should be further appreciated that, at anytime, the user may exit the Web page illustrated in FIG. 5 by selectingthe “Home” field 430 in order to modify the active sensor settings. As aresult of this selection, the IRD 10 would redisplay the sensoractivation Web page illustrated in FIG. 3 and thus return the user tostep 105 of the flow chart illustrated in FIG. 2.

Once a user has selected a particular folder from the Web pageillustrated in FIG. 5, another Web page is displayed to the user listingvarious links related to the selected folder. An example of a Web page.including such links according to an embodiment of the invention isshown in FIG. 6. Similar to the aforementioned Web pages described inFIGS. 3 and 5, the IRD 10 display unit 12 is again comprised of variousfields. In this case, however, the display unit 12 may be comprised of aplurality of link fields which include a “Link One” field 500, a “LinkTwo” field 505, a “Link Three” field 510 as well as all other linkfields up to link field n 515 (where n represents the total number oflinks displayed to the user). Other fields displayed to the user mayinclude fields used to scroll through other links, not currentlydisplayed, such as an “Additional Links” field 520 and a “PreviousLinks” field 525. If none of these links include the user's desiredsearch results, the user may again enter its own search string in thefield labeled “Search Field” 535 where, similar to the electronic folderWeb page described with respect to FIG. 5, this string is used by thedata management module 30 at step 330 of the flow chart illustrated inFIG. 4. Also similar to the electronic folder Web page described withrespect to FIG. 5, the user may exit the Web page illustrated in FIG. 6by selecting the “Home” field 530 in order to modify the active sensorsettings at any time.

Once a user has selected a particular link from the Web page illustratedin FIG. 6, another Web page containing various fields, including a fielddisplaying the data corresponding to the selected link, is displayed tothe user. An example of a Web page including such fields according to anembodiment of the invention is shown in FIG. 7. As illustrated, thedisplay unit 12 pertaining to this particular Web page may be comprisedof a plurality of fields which include the aforementioned “SelectedData” field 600 containing the data corresponding to the selected link.It should be appreciated that the data displayed to the user in the“Selected Data” field 600 may be provided in various forms. In oneembodiment, for example, an investor may wish to analyze the performanceof a particular stock. Within this scenario, the investor may bepresented with a set of links which may include links to graphs,spreadsheets, or news regarding that particular stock.

Several other fields may also be included on the Web page illustrated inFIG. 7. One such field may include a “Related Folders” field 605 whichmay be used in order to generate a Web page similar to the oneillustrated in FIG. 5 based on a modified search which includes stringsrelated to the data currently being displayed in the “Selected Data”field 600. A “Back” and “Forward” field, 610 and 615 respectively, mayalso be included in order to navigate through the various Web pagesselected by the user. Similar to the Web pages described above withrespect to FIGS. 5 and 6, a “Home” field 620 and a “Search Field” 625having the same functionality as previously described may be included aswell.

Within the context of the aforementioned flow charts, it should beappreciated that a plurality of embodiments which include severaldifferent types of sensor settings can be envisioned. In one suchembodiment, an IRD 10 sensor unit 17 may be comprised of a “Dictation”setting enabling the user to dictate a conversation in real time. Inthis type of embodiment, a user may simply select the settingcorresponding to “Dictation”. In other embodiments, more sophisticated“Dictation” settings may also be implemented. Such embodiments mayinclude a textual analysis which launches certain applications wheneverparticular word patterns or words matching the user's tendency data aredetected. For example, if the name “John Doe” is repeatedly detected,the IRD 10 may relay any available information regarding “John Doe” tothe user from the data management module 30. For further example, if“John Doe” is detected, and “John Doe” comprises an entry in the user'saddress book database, the address book and/or other informationpertaining to “John Doe” may be retrieved and displayed. It should beappreciated that such information may include user-specific informationobtained directly from the data management module 30 (e.g., an addressbook, calendar, etc.) or information obtained from external data sources40 (e.g., an online database, search engine, etc.).

Similarly, the IRD 10 may retrieve data on selected terms within thecontext of other terms being used. Thus, for example, if the term “headend” is used repeatedly with the term “cable”, the data managementmodule 30 may conduct a search for these two terms together instead ofindividually. As a result, the data management module 30 may returninformation describing the function of a “head end” in conjunction witha cable system.

Another such embodiment may include a hybrid recording and transcriptionsensor setting which may be used in conjunction with informationretrieval services or as a separate feature. In this embodiment, the IRD10 may generate a running transcript which includes the locations of thespeakers relative to the IRD 10 in order to differentiate betweendifferent speakers in a conversation. In cases where the IRD 10 isunable to convert a sound into a word, the sound is simply recorded andincluded in the transcript as a hyperlink. An additional feature to thisembodiment may include a real time translator application whichtranslates between languages.

It should be appreciated that the IRD 10 sensor unit 17 may include aGPS receiver that enables the IRD 10 to retrieve information within thecontext of data received by the GPS receiver. For example, if the GPSsignal indicates that the user is in Japan, the data management module30 may give weight to search results related to Japan. Thus, in theprior example, the terms “head end” and “cable” might also returninformation about Japanese cable television operators.

It should be further appreciated that the IRD 10 may also anticipate theuser's needs by retrieving more specific GPS location data. For example,if the user is entering a video rental store, the IRD 10 may retrieve alist of the most popular rental videos for that week, together withmovies being shown on the user's local cable system. Similarly, a userentering a hardware store might be presented with the hardware store'scurrent advertised specials, together with links for reviews of thoseitems. Furthermore, a user may ask a salesperson a question regarding“washers” from which the IRD 10 may distinguish the user's request asbeing one for plumbing device “washers”, as opposed to home appliance“washers”, because the user is located in a hardware store. In thisrespect, the data management module 30 would conduct its searchaccordingly.

It should also be appreciated that data ascertained from a GPS receivermay also be used to present information about a particular establishmentor area the user is in. In this type of embodiment, a real estatebroker, for example, may approach a home for sale and receive a list ofinformation regarding that particular home. Such information may includethe address of the home, the sale price of the home, and informationregarding the neighborhood of the home organized in several electronicfolders,

In another embodiment, the IRD 10 may be used to analyze ambient soundsdetected by its sensor unit 17. In this embodiment, the IRD 10 may, forexample, identify the song and artist of music detected by the sensorunit 17 through a spectral analysis of the sensor data. Similarly, theIRD 10 may also be used to detect sounds from a telephone touch dial anddetermine the numbers being dialed. An added feature to this embodimentmay include a reverse lookup of the phone number which would displayinformation regarding the person on the receiving end of the call.

Having thus described several embodiments of a method and apparatus fordelivering content via information retrieval devices, it should beapparent to those skilled in the art that certain advantages of thewithin system have been achieved, It should also be appreciated thatvarious modifications, adaptations, and alternative embodiments thereofmay be made within the scope and spirit of the present invention. Theinvention is further defined by the following claims.

1.-23. (canceled)
 24. A method, comprising: a computing device detectingambient audio information via a sensor unit; the computing deviceanalyzing the detected audio information; and based on the analyzing,the computing device determining information regarding an origin of thedetected audio information.
 25. The method of claim 24, wherein theanalyzing includes performing a spectral analysis on the detected audioinformation.
 26. The method of claim 24, wherein the detected audioinformation corresponds to a work of music, and wherein the informationregarding the origin of the detected audio information includes a nameand artist of the work of music.